/* 
 * @(#)Request.java 2012-4-28
 * Copyright (c) 2012
 * Dark-J (Zh)Co., Ltd.
 * Dark-J R&D,BeiJing
 *
 * All Rights Reserved
 * 
 * Revision History:
 * 								Modification	 Traking
 * Author (Email ID)			Date			 Number				Description
 * ----------------------------------------------------------------------------------
 * yongchong.bai				2012-4-28		 					Initial Version
 */
package com.jworktogether.core;

/**
 * @author baiyc
 * @version 1.0
 */

import java.io.InputStream; 
import java.io.IOException; 

/**
 * 
 * 
 */
public class Request { 
   private InputStream input; 
   private String uri; 
 
   public Request(InputStream input) { 
     this.input = input; 
   } 
 
    public void parse() { 
       // Read a set of characters from the socket 
       StringBuffer request = new StringBuffer(2048); 
       int i; 
       byte[] buffer = new byte[2048]; 
       try { 
         i = input.read(buffer); 
       } 
       catch (IOException e) { 
         e.printStackTrace(); 
         i = -1; 
       } 
       for (int j=0; j<i; j++) { 
         request.append((char) buffer[j]); 
       } 
       System.out.print(request.toString()); 
       uri = parseUri(request.toString()); 
    } 
   
 
    private String parseUri(String requestString) { 
       int index1, index2; 
       index1 = requestString.indexOf(' '); 
       if (index1 != -1) { 
         index2 = requestString.indexOf(' ', index1 + 1); 
         if (index2 > index1) 
           return requestString.substring(index1 + 1, index2); 
       } 
       return null; 
    } 
   
 
   public String getUri() { 
     return uri; 
   } 
}

